/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Control;

import Entidad.Report;
import java.util.ArrayList;

/**
 *
 * @author Omar Beltran
 */
public class CalcularMediana {
    ArrayList<Report> lista = new ArrayList<Report>();
    int K;
    
    public CalcularMediana(ArrayList<Report> lista, int K){
        this.lista = lista;
        this.K = K;   
    }
    
    
    public double temperaturaMediana(){
        
        double []arreglo = new double [K];
        double aux;
        int j=0;
        
        //llenar el array arreglo con las temperaturas
        for(int i=(lista.size())-K; i < lista.size(); i++){
            arreglo[j]=lista.get(i).getTemperature();
            j++;
        }
       
        //ordenar en forma ascendente los valores de arreglo
        for (int i=0;i<K;i++){
            if(arreglo[i] > arreglo[i+1]){
                aux = arreglo[i+1];
                arreglo[i+1] = arreglo[i];
                arreglo[i] = aux;
            }
        }
        
        //determinar mediana
        int pos = (int)((arreglo.length)/2);
        
        if((arreglo.length % 2) == 0)
            return ((arreglo[pos]+arreglo[pos+1])/2);
        else
            return arreglo[pos+1];
        
    }
}
